﻿namespace TestTool.Proxies.Onvif
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.ServiceModel;
    using System.ServiceModel.Channels;

    [GeneratedCode("System.ServiceModel", "3.0.0.0"), DebuggerStepThrough]
    public class ReceiverPortClient : ClientBase<ReceiverPort>, ReceiverPort
    {
        public ReceiverPortClient()
        {
        }

        public ReceiverPortClient(string endpointConfigurationName) : base(endpointConfigurationName)
        {
        }

        public ReceiverPortClient(Binding binding, EndpointAddress remoteAddress) : base(binding, remoteAddress)
        {
        }

        public ReceiverPortClient(string endpointConfigurationName, EndpointAddress remoteAddress) : base(endpointConfigurationName, remoteAddress)
        {
        }

        public ReceiverPortClient(string endpointConfigurationName, string remoteAddress) : base(endpointConfigurationName, remoteAddress)
        {
        }

        public void ConfigureReceiver(string ReceiverToken, ReceiverConfiguration Configuration)
        {
            base.Channel.ConfigureReceiver(ReceiverToken, Configuration);
        }

        public Receiver CreateReceiver(ReceiverConfiguration Configuration)
        {
            return base.Channel.CreateReceiver(Configuration);
        }

        public void DeleteReceiver(string ReceiverToken)
        {
            base.Channel.DeleteReceiver(ReceiverToken);
        }

        public Receiver GetReceiver(string ReceiverToken)
        {
            return base.Channel.GetReceiver(ReceiverToken);
        }

        public Receiver[] GetReceivers()
        {
            GetReceiversRequest request = new GetReceiversRequest();
            return ((ReceiverPort) this).GetReceivers(request).Receivers;
        }

        public ReceiverStateInformation GetReceiverState(string ReceiverToken)
        {
            return base.Channel.GetReceiverState(ReceiverToken);
        }

        public ReceiverServiceCapabilities GetServiceCapabilities()
        {
            return base.Channel.GetServiceCapabilities();
        }

        public void SetReceiverMode(string ReceiverToken, ReceiverMode Mode)
        {
            base.Channel.SetReceiverMode(ReceiverToken, Mode);
        }

        [EditorBrowsable(EditorBrowsableState.Advanced)]
        GetReceiversResponse ReceiverPort.GetReceivers(GetReceiversRequest request)
        {
            return base.Channel.GetReceivers(request);
        }
    }
}

